/* Funcion que valida el formulario de registro */
function procesaFormulario(){
	var correcto = true;
	var error = new Array(); error[5] = ("","","");
	
	if(validaError())
		error[0] = "<blink>Error:</blink><br>";
	if (validaPalabraLon("nombreLibro",40)) 
		error[1] = "- <cite>Nombre</cite> -> 1º letra en May.<br>";
	if (validaPalabraLon("nombreAutor",40)) 
		error[2] = "- <strong>Autor</strong> -> 1º letra en May.<br>";
	if (validaFecha())
		error[3] = "- <cite>Fecha</cite> -> Sintaxis: dia-mes-año.<br>";
	if(validaISBN())
		error[4] = "- <strong>ISBN</strong> -> Debe introducir 10 dígitos. <br>";
	
	for (i = 0; i < error.length; i++) {
		if (error[i] == undefined) {
			var objerror = document.getElementById("div_errorBusAvan." + i);
			objerror.innerHTML = "OK";
			objerror.className = "error_Ok";
		}
		else if (error[i] != "") {
			correcto = false;
			var objerror = document.getElementById("div_errorBusAvan." + i);
			objerror.innerHTML = error[i];
			objerror.className = "error_Boom";
		}
		else {
		
		}
	}
	return correcto;
}
/* Error */
function validaError(){
	if(validaPalabraLon("nombreLibro",40) == false && validaPalabraLon("nombreAutor",40) == false
		&& validaFecha() == false && validaISBN() == false){
			return false;
	}else{
		return true;
	}
}
 /* Palabra que empiece en May y no mayor de longitud */
 function validaPalabraLon(id, longitud){
 	var objName = document.getElementById(id);
 	var valName = objName.value;
 	var patronMay = /(^[A-Z]{1}[a-zA-Z]{0,40})/;
 	if (valName == ""){ 
 		return false;
 	}else if((valName.length > longitud) || (patronMay.test(valName) == false)){
		return true;
	}else{
		return false;
	}
 }

/* Fecha Publicacion */
 function validaFecha(){
 	var objFecha = document.getElementById("añopublicacion");
	var valFecha = objFecha.value;
	var patronFecha = /(^[0-9]{2}-[0-9]{2}-[0-9]{4})/;
	if(valFecha == ""){
		return false;
	}else if(!(fechaValida(valFecha)) || (fechaMayor(valFecha)) || (patronFecha.test(valFecha) == false)){
		return true;
	}else{
		return false;
	}
 }
 
 function fechaMayor(valfecha){
 	var fechaHoy = new Date();
	var eleFecha = valfecha.split("-");	//.split() para separar una cadena segun (sintaxis) y formar 1 array
	var fechaUsuario = new Date(eleFecha[2],eleFecha[1],eleFecha[0]);
	if(fechaUsuario.getFullYear() >= fechaHoy.getFullYear()){
		if ((fechaUsuario.getMonth() + 0) >= (fechaHoy.getMonth() + 0)) {
			if (fechaUsuario.getDate() > fechaHoy.getDate()) {
				return true;
			}else{
				return false;
			}
		}else{
			return false;
		}
	}else{
		return false;
	}
 }
 
  function fechaValida(valfecha) {
	var fecha = valfecha.split("-");
	var dia = parseInt(fecha[0]);
	var mes = parseInt(fecha[1]);
	var ano = parseInt(fecha[2]);
	var valida = true;
	if ((dia.length == 2) && (mes.length == 2) && (ano.length == 4)) {
		switch (mes) {
		case 1: diaMax = 31;	break;
		case 2: if ((ano % 4 == 0) && (( ano % 100 != 0) || (ano % 400 == 0))) diaMax = 29;
		 			else diaMax = 28;	 break;
		case 3: diaMax = 31;	break;
		case 4: diaMax = 30;	break;
		case 5: diaMax = 31;	break;
		case 6: diaMax = 30;	break;
		case 7: diaMax = 31;	break;
		case 8: diaMax = 31;	break;
		case 9: diaMax = 30;	break;
		case 10: diaMax = 31;	break;
		case 11: diaMax = 30;	break;
		case 12: diaMax = 31;	break;
		default: diaMax = -1;
		}
		diaMax != "" ? diaMax:diaMax = -1;

		var date = new Date();
		if ((dia < 1) || (dia > diaMax) || (mes < 1) || (mes > 12) || (ano > date.getFullYear())) {
			valida = false;	
		}
	}else{ 
		valida = false;
	}	
	return valida;
}

/* ISBN */
 function validaISBN(){
 	var objISBN = document.getElementById("isbnLibro");
	var valISBN = objISBN.value;
	var patronISBN = /^[0-9]{10}$/;
	if(valISBN == ""){
		return false;
	}else if(patronISBN.test(valISBN) == false){
		return true;
	}else{
		return false;
	}
 }

